home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Belgian Amiga Club - ADF Collection
/
BS1 part 27.zip
/
BS1 part 27
/
HiSoftBasicD1.adf
/
Libinfo
< prev
next >
Wrap
Text File
|
1993-07-29
|
2KB
|
60 lines
Library-Aufrufe
---------------
Hier liegt die Quelle der Verwirrung für viele Anwender.
Mit Library-Aufrufen meinen wir den Aufruf von Routinen aus
Amiga-Libraries, wie z.B. Intuition, Grafik oder DOS.
HiSoft Basic ist zu 99% kompatibel mit dem AmigaBasic-Interpreter
und im Gebrauch von Libraries.
Um eine Library aufzurufen, brauchen Sie eine .bmap-Datei,
die mit dem Programm "convertfd" auf der Extras-Disk
erzeugt werden kann; allerdings sind bequemlichkeitshalber
alle gebräuchlichen .bmap-Dateien im Verzeichnis .libs:
auf Disk 1 enthalten.
Die .bmap-Dateien werden nur zur Kompilierzeit gebraucht,
und nicht dann, wenn das kompilierte Programm abläuft.
Zusätzlich ist auf Disk 2 eine modifizierte
convertfd.bas-Quelldatei enthalten.
Der erste Schritt zum Gebrauch von Libraries liegt darin,
die gewünschte Library anzugeben. Dies geschieht in der
LIBRARY-Anweisung. Danach werden mit DECLARE-Anweisungen
Funktionen definiert, wie z.B. in
LIBRARY "dos.library"
DECLARE FUNCTION SetComment&(nameptr&,comment&) LIBRARY
Dies bedeutet, daß die DOS-Library gebraucht wird und
SetComment eine Funktion ist. Beim Fehlen von DECLARE
würde angenommen, daß SetComment eine Prozedur ist
(d.h. besitzt kein Return-Ergebnis).
Der Aufruf eines Unterprogramms aus einer Library funktioniert
wie der Aufruf eines eigenen Unterprogrammes, z.B.
LIBRARY "graphics.library"
rp&=WINDOW(8) : a$="HiSoft-BASIC Intuition-Text"
Text rp&,SADD(a$),LEN(a$))
oder
CALL Text(rp&,SADD(a$),LEN(a$))
Um herauszufinden, welche Parameter übergeben werden müssen,
schlagen Sie bitte in den ROM-Kernel-Handbüchern nach;
alle Parameter werden als Langworte übergeben; d.h. für einige
Aufrufe muß für Strings mit SADD die Adresse gefunden werden und
ein CHR$(0) angefügt werden.
Beachten Sie, daß die Namen mit denen in einigen Basic-Dialekten
gleich sind; das Programm convertfd ändert sie, indem es ein x
davor setzt, z.B. xREAD.
Verwechseln Sie das nicht mit echten Maschinenaufrufen:
die Syntax CALL LOC darf nicht in Library-Aufrufen verwendet werden.
Beispiele für Library-Aufrufe finden Sie in GetFile auf Disk 2
und Libraries auf der Extras-Disk.